@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion

echo.
echo ════════════════════════════════════════════
echo   一键完整修复模拟位置
echo ════════════════════════════════════════════
echo.
echo 这个脚本会：
echo   1. 重启模拟位置应用
echo   2. 等待应用初始化
echo   3. 停止融合定位服务
echo   4. 验证模拟位置状态
echo.

echo ════════════════════════════════════════════
echo [步骤1/4] 重启模拟位置应用
echo ════════════════════════════════════════════
echo.
echo 停止应用...
adb shell am force-stop com.example.munidingwei
timeout /t 1 /nobreak >nul

echo 启动应用...
adb shell am start -n com.example.munidingwei/.MainActivity
echo   ✓ 应用已启动
timeout /t 3 /nobreak >nul

echo.
echo 等待应用初始化（5秒）...
timeout /t 5 /nobreak >nul
echo   ✓ 初始化完成
echo.

echo ════════════════════════════════════════════
echo [步骤2/4] 检查 Test Provider 状态
echo ════════════════════════════════════════════
echo.
adb logcat -d -s MockLocationProvider:D | findstr "添加测试provider" | more +1000
echo.

echo ════════════════════════════════════════════
echo [步骤3/4] 停止融合定位服务
echo ════════════════════════════════════════════
echo.
echo 停止高德地图...
adb shell am force-stop com.autonavi.minimap

echo 停止百度地图...
adb shell am force-stop com.baidu.BaiduMap

echo 停止 Google Play Services...
adb shell am force-stop com.google.android.gms

echo 停止小米定位服务...
adb shell am force-stop com.xiaomi.location.fused

echo   ✓ 所有服务已停止
echo.

echo ════════════════════════════════════════════
echo [步骤4/4] 验证模拟位置状态
echo ════════════════════════════════════════════
echo.
echo 检查 GPS Provider...
adb shell "dumpsys location" | findstr "gps provider" | findstr "mock"
echo.
echo 检查 Network Provider...
adb shell "dumpsys location" | findstr "network provider" | findstr "mock"
echo.

echo ════════════════════════════════════════════
echo   修复完成！
echo ════════════════════════════════════════════
echo.
echo ✅ 接下来请按照以下步骤操作：
echo.
echo 【步骤1】在应用中设置模拟位置
echo    - 打开模拟位置应用
echo    - 拖动地图到想要的位置
echo    - 点击"设置为模拟位置"按钮
echo    - 等待提示"模拟位置设置成功"
echo.
echo 【步骤2】测试第三方应用
echo    - 打开高德地图或百度地图
echo    - 点击定位按钮
echo    - 查看是否显示模拟位置
echo.
echo 【步骤3】如果还是不行
echo    - 方案A: 重启手机（最有效）
echo    - 方案B: 再次运行本脚本
echo    - 方案C: 清除第三方应用数据
echo.
echo 💡 常用命令：
echo.
echo    查看当前位置：
echo      adb shell "dumpsys location | grep 'last location' | grep mock"
echo.
echo    查看应用日志：
echo      adb logcat -s MockLocationProvider:D LocationService:D
echo.

pause

